Scripting languages, such as JavaScript™, enable application developers to write code in a language that is relatively less complicated, more intuitive, and/or otherwise more accessible and/or easier to use than more traditional programming languages such as Java or Objective C. Unlike Java and Objective C, JavaScript and other scripting language, however, are not class-based object-oriented programming (OOP) languages. Instead, they provide prototype-based inheritance, by which the parameters (functions and/or variables) of certain functions can be inherited by other functions, similar to the manner in which a child class inherits methods and parameters of its parent class. However, since JavaScript and similar scripting languages are not class-based OOP languages, there is no native concept of a hierarchy of objects and/or classes, and therefore no native support for certain OOP techniques that depend on an awareness of such a hierarchy, such as calling “super” to invoke a method as defined in a parent class (sometimes referred to as a “super-class”), prior to having been overwritten in a current class. Instead of being able to simply name the method preceded by the keyword “super”, to invoke a method as defined prior to being overwritten in the current function, in JavaScript and similar scripting languages typically the programmer must know where within the hierarchy that he/she has created the overwritten function was last overwritten (or first defined) and then include an explicit pointer to the method as overwritten (or first defined) in the parent (or grandparent, etc.) function, typically using an awkward syntax.